草庐IT

MySQL 枚举空值

全部标签

java - 为什么使用 == 比较枚举会导致 PMD 警告?

以下使用==比较两个枚举值:MyEnumenum1=blah();//couldreturnnullMyEnumenum2=blahblah()//couldreturnnullif(enum1==enum2){//...}但是PMD给出了一个CompareObjectsWithEquals第3行警告:Useequals()tocompareobjectreferences不确定我是否理解sourcecodeforthischeck但认为使用==比较两个枚举是可以的,所以我想知道我的代码是否可以改进或者检查不正确。 最佳答案 这确实

java - Java 6 中的空枚举

Java7提供了方便的方法Collections.emptyEnumeration()但这在Java6中不可用。是否有空枚举类潜伏在JDK的其他地方,还是我需要自己动手? 最佳答案 你可以简单地使用Collections.enumeration(Collections.emptyList()); 关于java-Java6中的空枚举,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2

java - 从枚举返回计算值

请问我的问题是两个而且非常简单按原样误解枚举这个想法在我的代码中缺少一些重要的抽象代码示例,其中oprt.calc(x,y)不可编译,并带有警告cannotfindsymbolpublicenumOperation{PLUS{publicdoublecalc(doublex,doubley){returnx+y;}},MINUS{publicdoublecalc(doublex,doubley){returnx-y;}},MULTILPLE{publicdoublecalc(doublex,doubley){returnx*y;}},DIVIDED_BY{publicdoublecal

java - 当枚举类型引用是 Class<?> 时,如何将 String 转换为枚举值?

我有代码使用其setter方法在对象上设置值。其中一个setter将Enum类型作为方法参数。代码看起来像这样:Stringvalue="EnumValue1";Methodsetter=getBeanWriteMethod("setMyEnumValue");Classtype=setter.getParameterTypes()[0];ObjectconvertedValue=null;if(type.isEnum()){convertedValue=convertToEnum(value,type);}else{convertedValue=ClassUtils.convertT

java - 绑定(bind)枚举以在 Play 中形成 <select> 元素!框架 2.1

我正在尝试找出绑定(bind)enum的最佳实践形成下拉菜单在玩!2.0这是我的枚举:publicenumContactType{CLIENT(1),CONTRACTOR(2),SUPPLIER(3);publicfinalintid;ContactType(intid){this.id=id;}}在我看来,这是我希望得到的结果:CLIENTCONTRACTORSUPPLIER 最佳答案 假设您将选择放入HTML表单,我们的做法是将Map添加到Java枚举,然后使用框架提供的选择表单助手:枚举:publicenumContactTy

java - 枚举中的业务逻辑?

将任何类型的业务逻辑放入枚举中是否被认为是好的做法?不是真正密集的逻辑,但更像是方便的实用方法。例如:publicenumOrderStatus{OPEN,OPEN_WITH_RESTRICTIONS,OPEN_TEMPORARY,CLOSED;publicstaticbooleanisOpenStatus(OrderStatussts){returnsts==OPEN||sts==OPEN_WITH_RESTRICTIONS||sts==OPEN_TEMPORARY;}} 最佳答案 恕我直言,这使您能够将相关信息放在可能被使用和搜

java - 在 Java 中,如何在枚举本身中获取枚举的值?

我想为我的枚举Color覆盖toString()。但是,我无法弄清楚如何在Color枚举中获取Color实例的值。有没有办法在Java中执行此操作?例子:publicenumColor{RED,GREEN,BLUE,...publicStringtoString(){//return"R"forRED,"G",forGREEN,etc.}} 最佳答案 也可以开启this的类型,例如:publicenumFoo{A,B,C,D;@OverridepublicStringtoString(){switch(this){caseA:ret

java - 从主要包含空值的 Comparables 列表中获取最小值和最大值的最佳方法是什么?

我正在考虑这样的事情:publicstatic>TminOf(T...ts){SortedSetset=newTreeSet(Arrays.asList(ts));returnset.first();}publicstatic>TmaxOf(T...ts){SortedSetset=newTreeSet(Arrays.asList(ts));returnset.last();}但不是null安全的,这也是我想要的。你知道解决这个问题的更好方法吗?编辑:评论后我也试过min():publicstatic>TminOf(T...ts){returnCollections.min(Array

Java MessageFormat 空值

在JavaMessageFormat中处理空值的最佳方式是什么MessageFormat.format("Value:{0}",null);=>Value:null但实际上“值:”会很好。同日期MessageFormat.format("Value:{0,date,medium}",null);=>Value:null一个“值:”会更受欢迎。有什么办法吗?我试过选择{0,choice,null#|notnull#{0,date,dd.MM.yyyy–HH:mm:ss}}这会导致无效的选择格式,检查“null”或“notnull”的正确方法是什么? 最佳答案

java - 查找所有可能的枚举组合

有没有一种有效的方法可以找到Java中多个枚举之间所有可能的组合?考虑以下三个枚举-publicenumEnumOne{One("One"),OneMore("OneMore");}publicenumEnumTwo{Two("Two"),}publicenumEnumThree{Three("Three"),ThreeMore("ThreeMore");}我希望输出在这些多个枚举之间产生所有可能的组合,即{EnumOne.One,EnumTwo.Two,EnumThree.Three},{EnumOne.One,EnumTwo.Two,EnumThree.ThreeMore},{En